package modelo.negocio;

import java.util.List;

import modelo.bean.CompraBean;
import modelo.bean.CotizacionBean;
import modelo.bean.Cuenta;
import modelo.bean.EstrategiaBean;
import modelo.bean.OperacionBean;
import modelo.bean.SoporteBean;
import modelo.bean.ValorBean;
import modelo.negocio.except.NegocioException;
import modelo.oad.util.CriteriosBusqueda;
import modelo.oad.util.ParBean;

public interface ManagerBolsa {

	//public List <SoporteBean> generarsoportes (String valor, Integer dias)throws NegocioException;
	public List<SoporteBean> generarSoportes (CriteriosBusqueda criteriosBusqueda, List<ParBean> criteriosOrdenacion,String valor, Integer dias)throws NegocioException;
	public ValorBean obetenerValor (String cdValor) throws NegocioException;
	public void realizarCompraSimulada()throws NegocioException;
	public void realizarVentaSimulada()throws NegocioException;
	public List <EstrategiaBean> mostrarEstadisticas ()throws NegocioException;
	//public CalcularResistencias (HashMap<String,String> hashValoresXML)throws NegocioException;
	//public  List<ValorBean> CalcularValores (String estrategia, Integer dias)throws NegocioException;
	public void actualizarSoportes ()throws NegocioException;
	public void actualizarResistencias ()throws NegocioException;

	public List <ValorBean> mostrarValores (String estrategia)throws NegocioException;
	public void actualizarEstrategia()throws NegocioException;
	public void actualizarValoresEstrategia()throws NegocioException;
	public List <OperacionBean> mostrarOperaciones (String estrategia, String valor)throws NegocioException;
	public List <OperacionBean> mostrarOperaciones (String tipo)throws NegocioException;
	public void InsertarOperacion (String Valor,String FechaCompra,String NumAcciones,String PrecioCompra,String ImporteCompra,String PrecioVenta,
                String ImporteVenta,String Resultado,String ResultadoComisiones) throws NegocioException;
	public void InsertarRSI14 () throws NegocioException;
	public List <CotizacionBean> mostrarCotizaciones (String valor, int dias)throws NegocioException;

	public List <OperacionBean> mostrarOperacionesEstrategia (String estrategia)throws NegocioException;
	public void InsertarSoporteDiario (String valor, double minimo,double volumen)throws NegocioException;
	//public void ActualizarApertura ()throws NegocioException;
	public List <CompraBean> ObtenerCompras (String tipo)throws NegocioException;
	public Cuenta ObtenerCuenta()throws NegocioException ;
	public void insertarCompra(String Valor, String FechaCompra,String NumAcciones,String PrecioCompra,String ImporteCompra,
			String ImporteCompraComisiones)throws NegocioException;
	public void insertarVenta(String Valor, String FechaCompra,String NumAcciones,String PrecioCompra,String ImporteCompra,
			String ImporteCompraComisiones)throws NegocioException;
}
